package com.innovus.doomi; /** * Created by Jorge Viveros on 11/11/2014. */ import android.accounts.Account; import android.accounts.AccountManager; import android.app.Activity; import android.app.Dialog; import android.content.Context; import android.support.annotation.Nullable; import com.appspot.domi_app.domi.Domi; import com.google.android.gms.auth.GoogleAuthUtil; import com.google.android.gms.common.GooglePlayServicesUtil; import com.google.api.client.extensions.android.http.AndroidHttp; import com.google.api.client.extensions.android.json.AndroidJsonFactory; import com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential; import com.google.api.client.http.HttpTransport; import com.google.api.client.json.JsonFactory; /** * Application constants. */ public class AppConstants { /** * Your WEB CLIENT ID from the API Access screen of the Developer Console for your project. This * is NOT the Android client id from that screen. * * @see <a href="https://developers.google.com/console">https://developers.google.com/console</a> */ public static final String WEB_CLIENT_ID = "204916157214-1hho3fgafmt30l9kt7rljls1qttbeb3n.apps.googleusercontent.com"; public static final String AUDIENCE = "server:client_id:" + WEB_CLIENT_ID; public static final JsonFactory JSON_FACTORY = new AndroidJsonFactory(); public static final HttpTransport HTTP_TRANSPORT = AndroidHttp.newCompatibleTransport(); public static Domi getApiServiceHandle(@Nullable GoogleAccountCredential credential) { // Use a builder to help formulate the API request. Domi.Builder helloWorld = new Domi.Builder(AppConstants.HTTP_TRANSPORT, AppConstants.JSON_FACTORY,credential); return helloWorld.build(); } //Agrega un metodo para contar el numero de cuentas de google public static int countGoogleAccounts(Context context) { AccountManager am = AccountManager.get(context); Account[] accounts = am.getAccountsByType(GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE); if (accounts == null || accounts.length < 1) { return 0; } else { return accounts.length; } } public static boolean checkGooglePlayServicesAvailable(Activity activity) { final int connectionStatusCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(activity); if (GooglePlayServicesUtil.isUserRecoverableError(connectionStatusCode)) { // GooglePlayServicesUtil.showErrorDialogFragment(connectionStatusCode, activity); showGooglePlayServicesAvailabilityErrorDialog(activity, connectionStatusCode); return false; } return true; } public static void showGooglePlayServicesAvailabilityErrorDialog(final Activity activity, final int connectionStatusCode) { final int REQUEST_GOOGLE_PLAY_SERVICES = 0; activity.runOnUiThread(new Runnable() { @Override public void run() { Dialog dialog = GooglePlayServicesUtil.getErrorDialog( connectionStatusCode, activity, REQUEST_GOOGLE_PLAY_SERVICES); dialog.show(); } }); } }